package com.ruoyi.ncpsy.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 仓储信息对象 ncpsy_ware_info
 * 
 * @author ruoyi
 * @date 2025-11-13
 */
public class NcpsyWareInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long wareId;

    /** 溯源码(单元码，批次码) */
    @Excel(name = "溯源码(单元码，批次码)")
    private String traceabilityCode;

    /** 仓库ID */
    @Excel(name = "仓库ID")
    private Long warehouseId;

    /** 作物ID */
    @Excel(name = "作物ID")
    private Long cropId;

    /** 当前库存容量 */
    @Excel(name = "当前库存容量")
    private Long currentStockCapacity;

    /** 入库时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入库时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date warehousingTime;

    /** 最后保质期时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后保质期时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastShelfLifeTime;

    /** 创建人 */
    @Excel(name = "创建人")
    private String creator;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date creationTime;

    /** 状态 */
    @Excel(name = "状态")
    private Long status;

    /** 备注 */
    @Excel(name = "备注")
    private String remarks;

    public void setWareId(Long wareId) 
    {
        this.wareId = wareId;
    }

    public Long getWareId() 
    {
        return wareId;
    }

    public void setTraceabilityCode(String traceabilityCode) 
    {
        this.traceabilityCode = traceabilityCode;
    }

    public String getTraceabilityCode() 
    {
        return traceabilityCode;
    }

    public void setWarehouseId(Long warehouseId) 
    {
        this.warehouseId = warehouseId;
    }

    public Long getWarehouseId() 
    {
        return warehouseId;
    }

    public void setCropId(Long cropId) 
    {
        this.cropId = cropId;
    }

    public Long getCropId() 
    {
        return cropId;
    }

    public void setCurrentStockCapacity(Long currentStockCapacity) 
    {
        this.currentStockCapacity = currentStockCapacity;
    }

    public Long getCurrentStockCapacity() 
    {
        return currentStockCapacity;
    }

    public void setWarehousingTime(Date warehousingTime) 
    {
        this.warehousingTime = warehousingTime;
    }

    public Date getWarehousingTime() 
    {
        return warehousingTime;
    }

    public void setLastShelfLifeTime(Date lastShelfLifeTime) 
    {
        this.lastShelfLifeTime = lastShelfLifeTime;
    }

    public Date getLastShelfLifeTime() 
    {
        return lastShelfLifeTime;
    }

    public void setCreator(String creator) 
    {
        this.creator = creator;
    }

    public String getCreator() 
    {
        return creator;
    }

    public void setCreationTime(Date creationTime) 
    {
        this.creationTime = creationTime;
    }

    public Date getCreationTime() 
    {
        return creationTime;
    }

    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("wareId", getWareId())
            .append("traceabilityCode", getTraceabilityCode())
            .append("warehouseId", getWarehouseId())
            .append("cropId", getCropId())
            .append("currentStockCapacity", getCurrentStockCapacity())
            .append("warehousingTime", getWarehousingTime())
            .append("lastShelfLifeTime", getLastShelfLifeTime())
            .append("creator", getCreator())
            .append("creationTime", getCreationTime())
            .append("status", getStatus())
            .append("remarks", getRemarks())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
